DDEってなに?
A:(延さん)
「DDE」というのは、「Dynamic Data Exchange」の頭文字で、そのまま直訳して「動的データ交換」ということで、複数の実行中のアプリケーション間で、直接データの交換を行う方法だよ。複数の実行中のアプリケーション間でデータのやり取りを行う方法はいろいろとあるよね。たとえば、双方のアプリケーションである特定のファイルを決めておき、片方のアプリケーションがそのファイルに書き込み、一方のアプリケーションがそれを読むという方法だ。この場合はファイルという「静的」な媒体を利用しているため、いわば「静的データ交換」ということになり、伝言板や留守電にメッセージをいれておくようなものだね。
しかしこの方法だど、読む側のタイミングがつかめず、伝達のタイムラグは避けらない。やはり携帯電話で直接知らせるような方法をとりたい時もあるはずです。このような場合にお互い実行中でも直接データをやり取りする方法が「DDE」なんだ。
Q:(憲さん)
具体的にどのような場面で使われるのでしょう?
A:(延さん)
たとえば2つのエクスプローラが起動されていて、同じフォルダを開いています。一方であるファイルを削除した場合、もう一方のエクスプローラからもそのファイルの表示が消えるよね。これは削除作業をしたエクスプローラから、一方のエクスプローラに「ファイルを削除したから、表示を書き変えたほうがいいかもよ」という知らせがいっているんだよ。
あと、憲さんがやろうとしていたファイルの関連付け起動の場合は、もし起動しようとするアプリケーションが、既に起動されていたら、あらたに別のプログラムを起動しないで、既存のアプリケーションに指定ファイルを表示させてしまう、というような時にもよく使うよ。
Q:(貴子)
どんなアプリケーション間でもできるの?
A:(延さん)
そうはいかない。これはあくまでそのアプリケーションを作った人しだい。プログラマがそのような機能をプログラムに盛り込んでおかなければだめなんだ。
上の画面に「DDEメッセージ」とか「トピック」とかいうものがあるだろ。これはちょっとした合い言葉のようなもので、こういう「DDEメッセージ」を受け取ったら、こうするとか、こんなトピックだったら、こうするといった、ロジック(論理)をプログラムに実装して、初めてできることなんだ。
まあ携帯電話も相手が持ってなきゃだめだし、さらに特定の合い言葉を言った人とだけ、その合い言葉に応じたやり取りのみを行うといったイメージだね。
Q:(貴子)
じゃ、普通のユーザには全然関係ないことね。
A:(延さん)
まあそういうことなのだけど、ファイルの関連付けのところでいやでも目にするから、興味もっちゃうよね。